package com.ayf.payment.game.api.mapper;

import com.ayf.payment.game.api.dto.criteria.ProxyGroupCriteria;
import com.ayf.payment.game.api.entity.ProxyGroup;
import org.apache.ibatis.annotations.Param;
import tk.mybatis.mapper.common.Mapper;

import java.util.List;

public interface ProxyGroupMapper extends Mapper<ProxyGroup> {
    /**
     * 查询分组
     *
     * @param merchantId
     * @return
     */
    List<ProxyGroup> selectGroup(@Param("merchantId") Integer merchantId);

    /**
     * 查询出默认分组
     *
     * @param merchantId
     * @return
     */
    ProxyGroup selectDefaultsGroup(@Param("merchantId") Integer merchantId);

    /**
     * 查询分组详情
     *
     * @param proxyGroupCriteria
     * @return
     */
    ProxyGroupCriteria selectGroupInfo(@Param("group") ProxyGroupCriteria proxyGroupCriteria);

    /**
     * 将默认分组设为非默认
     *
     * @param merchantId
     * @return
     */
    int updateGroupDefaults(@Param("merchantId") Integer merchantId);

    /**
     * 分组下人数变更
     *
     * @param groupId
     * @return
     */
    int updateGroupMerchantNum(@Param("groupId") Integer groupId, @Param("num") Integer num);

    /**
     * 查询分所有组详情
     *
     * @return
     */
    List<ProxyGroup> selectAllGroupInfo();
}